Image forming apparatus method of controlling the image forming apparatus and storage medium

ABSTRACT

An image forming apparatus which is capable of performing more appropriate control of access to files which grant different access rights on a versions basis. The image forming apparatus is communicably connected to a file server. In a system controller of the image forming apparatus, a reading control section reads an original to thereby generate image data. The reading control section extracts version information on the original from the generated image data. Then, the system controller identifies, out of at least one version of an original file stored in the file server as electronic data corresponding to the original, a version that permits the image forming apparatus to perform image formation, based on the extracted version information on the original.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an image forming apparatus, a method ofcontrolling the image forming apparatus, and a storage medium, and moreparticularly to an image forming apparatus characterized by a techniquefor performing access control to version-controlled files, a method ofcontrolling the image forming apparatus, and a storage medium storing aprogram for implementing the method.

2. Description of the Related Art

Conventionally, there has been proposed an image forming apparatus thatreads an original and extracts information on an original file embeddedin the original, and then acquires the original file from a file serverto print the same.

There have also been proposed an image forming apparatus that switchesprocessing depending on whether version information also embedded asinformation on an original file indicates that the original is thelatest version (see e.g. Japanese Patent Laid-Open Publication No.2006-352284).

In this image forming apparatus, if the original is the latest version,the original is immediately copied, whereas if the original is an oldversion, the latest version is acquired from a file server for printing.

Further, in the image forming apparatus, if the original is the latestversion, an original file is acquired from the file server to therebycreate a copy with higher image quality, and if the original is an oldversion, a copy is created with a stamp image indicative of the factthat the copy is an old version.

According to the above-described image forming apparatus, processing isswitched depending on whether or not an original is the latest version.For this reason, when the image forming apparatus is applied to adatabase that performs version control of files and grant differentaccess rights on a version basis, it has been difficult to performappropriate access control.

SUMMARY OF THE INVENTION

The present invention provides an image forming apparatus which iscapable of performing more appropriate control of access to files whichgrant different access rights on a versions basis, a method ofcontrolling the image forming apparatus, and a storage medium storing aprogram for implementing the method.

In a first aspect of the present invention, there is provided an imageforming apparatus communicably connected to a file server, comprising areading unit configured to read an original to thereby generate imagedata, an extraction unit configured to extract version information onthe original from the image data generated by the reading unit, and anidentification unit configured to identify, out of at least one versionof an original file which is electronic data corresponding to theoriginal and is stored in the file server, a version of the originalfile that permits the image forming apparatus to perform imageformation, based on the version information on the original extracted bythe extraction unit.

In a second aspect of the present invention, there is provided a methodof controlling an image forming apparatus communicably connected to afile server, comprising reading an original to thereby generate imagedata, extracting version information on the original from the image datagenerated by the reading, and identifying, out of at least one versionof an original file which is electronic data corresponding to theoriginal and is stored in the file server, a version of the originalfile that permits the image forming apparatus to perform imageformation, based on the version information on the original extracted bythe extraction.

In a third aspect of the present invention, there is provided acomputer-readable storage medium storing a control program for causing acomputer to execute a method of controlling an image forming apparatuscommunicably connected to a file server, wherein the method comprisesreading an original to thereby generate image data, extracting versioninformation on the original from the image data generated by thereading, and identifying, out of at least one version of an originalfile which is electronic data corresponding to the original and isstored in the file server, a version of the original file that permitsthe image forming apparatus to perform image formation, based on theversion information on the original extracted by the extraction.

According to the image forming apparatus of the present invention, it ispossible to perform more appropriate control of access to files whichgrant different access rights on a version basis.

The features and advantages of the invention will become more apparentfrom the following detailed description taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of the configuration of a network system includingan image forming apparatus according to a first embodiment of thepresent invention.

FIG. 2 is a block diagram of the basic configuration of the imageforming apparatus appearing in FIG. 1.

FIG. 3 is a block diagram of the basic configuration of a file serverappearing in FIG. 1.

FIG. 4 is a diagram of an example of file version management informationstored in the file server.

FIG. 5 is a diagram of an example of version list information stored inthe image forming apparatus.

FIG. 6 is a view of an example of a display screen displayed on adisplay section of the image forming apparatus in FIG. 2.

FIGS. 7A and 7B are flowcharts of a version managing and printingprocess executed by the image forming apparatus.

FIGS. 8A and 8B are flowcharts of a variation of the version managingand printing process executed by the image forming apparatus.

FIG. 9 is a diagram of an example of user management information storedin the file server.

FIGS. 10A and 10B are flowcharts of a version managing and printingprocess executed by an image forming apparatus according to a secondembodiment of the present invention.

FIGS. 11A and 11B are flowcharts of a variation of the version managingand printing process executed by the image forming apparatus accordingto the second embodiment.

DETAILED DESCRIPTION OF THE EMBODIMENTS

The present invention will now be described in detail below withreference to the accompanying drawings showing embodiments thereof.

FIG. 1 is a diagram of the configuration of a network system includingan image forming apparatus according to a first embodiment of thepresent invention.

As shown in FIG. 1, the network system is comprised of image formingapparatuses 10 (10-1 and 10-2), a file server 20, and client PCs 30(30-1 and 30-2), which are communicably interconnected by a network 40.

Each of the image forming apparatuses 10 has various functions, such asa scan function, a print function, and a copy function. The imageforming apparatus 10 scans an original and extracts file informationembedded in the original, and then acquires information on filescorresponding to the original from the file server 20, followed byexecuting processing corresponding to the acquired information.

The file server 20 manages user information, and files and the likegenerated by the client PCs 30. The file server 20 is capable ofmanaging the files on a version-by-version basis.

Each of the client PCs 30 is operated by a user for various operations.The user can display, edit, store, print, or perform like processing onfiles stored in the file server 20 by operating the associated client PC30.

FIG. 2 is a block diagram of the basic configuration of the imageforming apparatus according to the first embodiment appearing in FIG. 1.

As shown in FIG. 2, a system controller 101 controls the overalloperation of the image forming apparatus via a system bus 120.

A ROM 102 stores a control program for the system controller 101, etc.The control program stored in the ROM 102 is executed by a CPU, notshown, of the system controller 101.

A RAM 103 stores setting values registered by an operator and managementdata on the image forming apparatus. Further, the RAM 103 storestemporary variables and the like.

A document management section 104 is implemented by a hard disk or thelike storage device. The document management section 104 is configuredto be capable of storing a plurality of image data items, job dataitems, job management information items, and so forth. For example,image data items from a reading control section 108 and print job dataitems input via an interface controller 110 can be stored in thedocument management section 104.

A compressing/expanding section 105 compresses or expands image data.The compressing/expanding section 105 performs processing, such ascompression of image data before storing the same in the documentmanagement section 104, and inversely, expansion of compressed imagedata stored in the document management section 104 into an originalimage data before reading out the same, as required. Further, it iswidely known to compress data by JPEG, JBIG, or the like, beforetransferring the data over a network, and when such compressed data isreceived by the image forming apparatus 10 via the network 40, thecompressing/expanding section 105 decompresses (expands) the compresseddata.

An operating section 106 is comprised of various kinds of keys and thelike, and the operator carries out various inputs using the operatingsection 106. A display section (display unit) 107 is implemented e.g. byan LCD or an LED. The display section 107 performs various kinds ofdisplays or voice notifications. If the resolution of the displaysection 107 is high enough, it is also possible to preview image datastored in the document management section 104 and print out the sameafter the check preview.

The reading control section (reading unit) 108 includes an image sensor,such as a CCD or a CS, and an image processing controller. The readingcontrol section 108 optically reads an original, converts optically readdata into electrical image data, and performs various kinds of imageprocessing, such as color processing, binarization processing, andhalftone processing, on the electrical image data to thereby generatehigh-definition image data.

The reading control section 108 is configured to be capable of executingeither or both of the ADF method in which originals placed on an ADF(Automatic Document Feeder) are read by feeding one by one and theplaten method in which an original placed on an original platen glass isread without being moved. In the present embodiment, the reading controlsection 108 also carries out processing for extracting informationindicative of a storage location and a version of an original file fromthe original having the information embedded therein.

A recording control section 109 is implemented by a laser printer or aninkjet printer. The recording control section 109 performs various kindsof image processing, such as smoothing and recording density correction,on image data to be recorded, to thereby convert the image data intohigh-definition image data, followed by outputting the high-definitionimage data onto a recording sheet.

The interface controller 110 transmits and receives image data,apparatus information, etc. to and from an information processingapparatus, such as the file server 20, which is connected to theprinting apparatus 10 e.g. via a network or a USB. As for acommunication control method, it is assumed that a known method isemployed, and description thereof is omitted.

A RIP section 111 performs RIP (Raster Image Processing) on PDL datainput via the interface controller 110. Further, the RIP section 111 isalso capable of storing intermediate data of image data generated by theRIP (Raster Image Processing) or print ready data (bitmap data forprinting or compressed data of the bitmap data), as required, in thedocument management section 104 again.

In the present embodiment, processing for embedding informationindicative of a storage location and a version of a file in image dataduring printing of the file is also carried out by the RIP section 111.

FIG. 3 is a block diagram of the basic configuration of the file serverappearing in FIG. 1.

As shown in FIG. 3, a CPU 201 controls the overall operation of the fileserver according to a program stored in a ROM 202, a RAM 203, or a harddisk 220. Alternatively, the CPU 201 controls the overall operation ofthe file server according to a program read out from an FD drive 221 ora CD/DVD drive 222.

The ROM 202 stores the control program executed by the CPU 201 and thelike. The RAM 203 temporarily stores programs and image data so as toenable the file server 20 to perform high-speed processing.

A hard disk controller 204 controls the hard disk 220. It is assumedthat an operating system, various kinds of application softwareprograms, and driver software programs are installed in the hard disk220, and files, image data, etc. are stored therein.

In general, the application software programs and the driver softwareprograms are installed into the hard disk 220 from othercomputer-readable media storing the programs e.g. via the FD drive 221or the CD/DVD drive 222. Alternatively, it is also possible to downloadthe application software programs and the driver software programs viaan interface controller 209 and install these into the hard disk 220.

An FD drive controller 205 controls the FD drive 221. A CD/DVD drivecontroller 206 controls the CD/DVD drive 222.

A keyboard/mouse controller 207 controls a keyboard/mouse 230 used by anoperator as an instruction input device for inputting instructions.

A display control section 208 controls a display 240 for performingvarious kinds of displays for the operator.

The interface controller 209 performs communication with each ofexternal terminal apparatuses, including the image forming apparatuses10, connected to the file server 20 via the network or the USB. As for acommunication control method, it is assumed that a known method isemployed, and description thereof is omitted.

It should be noted that each of the client PCs 30 appearing in FIG. 1may have the same basic configuration as that of the file server 20.

FIG. 4 is a diagram of an example of file version management informationstored in the file server 20.

As shown in FIG. 4, the file version management information (filedocument information) 400 is stored in the hard disk 220 of the fileserver 20. The file version management information 400 is generated foreach file managed by the file server 20. The file version managementinformation 400 stores information on the versions of files undermanagement, and the information is updated whenever a file is stored orupdated.

A version 401 is a piece of version information indicative of a versionregistered when a file under management is stored. In the presentembodiment, pieces of version information are classified into majorversions and minor versions. A version whose first decimal digit isequal to 0 is referred to as a major version, while a version whosefirst decimal digit is not equal to 0 is referred to as a minor version.

An update date and time 402 is indicative of a date and time when aversion of a file under management is stored, and an updater 403 isinformation indicative of the login name of a user who saves theversion. An access right 404 is information indicative of a rightallowing a user to access the version.

The present embodiment is configured such that each major version can beaccessed by both authorized editors and viewers, whereas each minorversion can be accessed by the authorized editors alone. For example,when a file is edited by an editor and stored as a minor version 2.1, aviewer is not permitted to access the file. Therefore, the viewer canview only versions 2.0 and 1.0, which are major versions.

In the present embodiment, appropriate access control is performed usingthe versions 401 and the access rights 404 managed in the file versionmanagement information 400.

First, when printing a file managed by the file server 20, informationindicative of the storage location and version of the file is sent tothe image forming apparatus 10 together with image data.

In the image forming apparatus 10, the the RIP section 111 causes theinformation indicative of the storage location and version of the fileto be embedded in the image data, and the recording control section 109prints out the image data. The embedded information may be visibleinformation, such as a barcode, or alternatively invisible information,such as watermark information. As for the information embeddingtechnique, it is assumed that a known technique is used, and descriptionthereof is omitted.

Thereafter, when the reading control section 108 of the image formingapparatus 10 reads a sheet having the image data printed thereon, as anoriginal, it extracts the information indicative of the storage locationand version of the original file embedded in the original. The use ofthe extracted information makes it possible to perform appropriateaccess control. This control will be described in detail hereinafter.

FIG. 5 is a diagram of an example of version list information stored inthe image forming apparatus.

The version list information 500 is stored in the RAM 103 of the imageforming apparatus 10. The version list information 500 is generated byextracting only information on versions which are compatible with anaccess right to the version of an original read by the image formingapparatus 10, from the file version management information 400.

FIG. 5 shows version list information 500 generated when it isdetermined that the version of a read original grants an access right toviewers (i.e. the version of the read original is a major version). Thisdetermination will be described in detail hereinafter with reference toFIGS. 7 to 8B.

FIG. 6 is a view of an example of a display screen displayed on thedisplay section appearing in FIG. 2.

As shown in FIG. 6, a version list 601 displays a list of pieces ofversion information which are selected as appropriate ones from thosestored in the version list information 500 according to a state of acheckbox 602. By entering a check mark in a checkbox provided before apiece of version information and then pressing an OK button 603, it ispossible to give a print instruction to print the version.

The checkbox 602 is used to instruct whether or not to display olderversions than that of the scanned original. The checkbox 602 can beswitched via the operating section 106.

If the checkbox 602 is checked, the older versions than that of thescanned original are also displayed in the version list 601. On theother hand, if the checkbox 602 is not checked, the older versions thanthat of the scanned original are not displayed.

In the present embodiment, if the checkbox 602 is not checked, theversion 1.0 which is older than that of the scanned original is notdisplayed. This configuration enables the user to switch whether or notto display older versions than that of a scanned original, therebycontributing to improvement of the usability of the apparatus.

FIGS. 7A and 7B are flowcharts of a version managing and printingprocess executed by the image forming apparatus according to the presentembodiment.

The version managing and printing process is executed under the controlof the system controller 101 appearing in FIG. 2.

Referring to FIGS. 7A and 7B, in a step S701, the system controller 101causes the reading control section 108 to read an original and extractinformation embedded in the read original, i.e. information on theversion of the original and information indicative of a location where afile as electronic data corresponding to the original (hereinafterreferred to as the “original file”) is stored, and then the processproceeds to a step S702. In the present embodiment, a printout obtainedby printing out an original file is referred to as an original. Asmentioned hereinbefore, the embedded information may be visibleinformation, such as a barcode, or alternatively invisible information,such as watermark information.

In the step S702, pieces of version information associated with theoriginal file are acquired from the file server 20, and then the processproceeds to a step S703. Various kinds of information stored in the fileversion management information 400 in association with the original filecan be acquired by passing the information indicative of the storagelocation of the file, which is acquired in the step S701, to the fileserver 20.

In the step S703, it is determined whether or not the acquisition of thepieces of version information associated with the original file issuccessful. If the acquisition is successful, the process proceeds to astep S704. On the other hand, if the acquisition fails e.g. because thefile does not exist, the process proceeds to a step S713.

In the step S704, it is determined whether or not the version of theoriginal read in the step S701 grants an access right to viewers i.e.whether or not the version of the read original is a major version. Thisdetermination can be performed by referring to the version informationextracted in the step S701 and the file version management information400 acquired in the step S702.

If it is determined that the version of the read original grants anaccess right to viewers, i.e. if the version of the read original is amajor version, the process proceeds to a step S705, whereas if not, i.e.if the version of the read original is a minor version, the processproceeds to a step S706.

In the step S705, a list of versions that grant an access right toviewers is generated. In this step, pieces of version information whichare compatible with an access right to the original file correspondingto the version information embedded in the original are extracted fromthe file version management information 400. More specifically, in thepresent embodiment, only versions (major versions) that grant an accessright to users having a view right are extracted to form the list.

The generated list is stored in the RAM 103 as the version listinformation 500, which is used in subsequent processing. The versionlist information 500 illustrated in FIG. 5 is an example generated byextracting only versions that grant an access right to viewers.

In the step S706, a list of all the versions of the original file isgenerated, and then the process proceeds to a step S707. In the stepS706, all the versions are listed from the file version managementinformation 400 acquired in the step S702.

In this case, the same list as shown in the file version managementinformation 400 in FIG. 4 is stored in the RAM 103 as the version listinformation 500, which is used in subsequent processing.

In the step S707, whether or not to display older versions than that ofthe scanned original is determined. This determination can be performede.g. by displaying the user-configurable checkbox 602 as appearing inFIG. 6, together with an instruction “Also display older versions thanthe scanned original”, and determining from a state of the checkbox 602.

If it is determined in the step S707 that the older versions than thatof the scanned original are not to be displayed, only information itemson the same version as that of the original and newer versions than thatof the original are displayed on the display section 107 in a step S708,and then the process proceeds to a step S710.

On the other hand, if it is determined in the step S707 that olderversions than that of the original file are also to be displayed, allthe pieces of version information in the version list information 500 inthe RAM 103 are displayed on the display section 107 in a step S709, andthen the process proceeds to the step S710.

In the step S710, it is determined whether or not a print instructionfor a specific version is received. This determination can be performedby displaying the version list 601 as appearing in FIG. 6 on the displaysection 107 and then determining whether or not the user has pressed theOK button 603 via the operating section 106.

If it is determined in the step S710 that the print instruction isreceived, a designated version, i.e. a version checked in the versionlist 601, is acquired from the file server 20 in a step S712, and thenprinting of the designated version is performed, followed by terminatingthe present process.

Version information on an original and an original file is associatedwith an access right to the original file.

On the other hand, if it is determined in the step S710 that the printinstruction is not received, it is determined in a step S711 whether ornot a cancel instruction is received. This determination can beperformed by displaying the version list 601 as appearing in FIG. 6 onthe display section 107, and then determining whether or not the userhas pressed a cancel button 604 via the operating section 106.

If it is determined in the step S711 that the cancel instruction isreceived, the process is immediately terminated, whereas if not, theprocess returns to the step S707.

If it is determined in the step S703 that the acquisition of the piecesof version information associated with the original file is notsuccessful, the process proceeds, as mentioned above, to the step S713,wherein it is determined whether or not copying is permitted.Determination as to whether or not to permit copying may be performedaccording to information unconditionally determined by the image formingapparatus 10, or alternatively may be configured to be changeable viathe operating section 106.

If it is determined in the step S713 that copying is not permitted, anotification of cancellation of copying is displayed on the displaysection 107 in a step S714, followed by terminating the present process.On the other hand, if it is determined in the step S713 that copying ispermitted, the original is copied in a step S715, followed byterminating the present process.

FIGS. 8A and 8B are flowcharts of a variation of the version managingand printing process executed by the image forming apparatus.

The present version managing and printing process is executed under thecontrol of the system controller 101 of the image forming apparatus.

In the present variation, determination as to an access right to theversion of the read original, which is performed in the step S704 inFIG. 7A, is performed by the file server 20.

Referring to FIGS. 8A and 8B, in a step S801, the same processing asthat in the step S701 is carried out.

In a step S802, version information on the original and informationindicative of the storage location of an associated original file, whichare extracted (acquired) in the step S801, are sent to the file server20. Then, as a response to the transmission, pieces of versioninformation corresponding to an appropriate access right selectedaccording to the version of the original are returned from the fileserver 20. The file server 20 determines whether the version of theoriginal is a major version or a minor version to thereby determine thepieces of version information to be returned as a response.

In a step S803, it is determined whether or not the acquisition of thepieces of version information in the step S802 is successful. If theacquisition is successful, the process proceeds to a step S804. On theother hand, if the acquisition fails e.g. because the file does notexist, the process proceeds to a step S811.

In the step S804, a list of the acquired versions is generated. This isprocessing for listing the pieces of version information acquired in thestep S802, and the generated list is stored in the RAM 103 as theversion list information 500 and is used in subsequent processing. Then,the process proceeds to a step S805.

The step S805 to a step S813 are the same as the steps S707 to S715 inFIGS. 7A and 7B.

As described above, according to the present embodiment, it is possibleto cause a group of versions each compatible with an access right to theversion of a read original to be displayed for selection and printing.This makes it possible to perform more appropriate control of access tofiles that grant different access rights on a version basis.

Next, a second embodiment of the present embodiment will be describedwith reference to FIGS. 9 and 10. The present embodiment isdistinguished from the first embodiment only by a version managing andprinting process which is described hereinafter with reference to FIGS.10A and 10B and in which user management information described belowwith reference to FIG. 9 is made use of. The other elements in thepresent embodiment are identical to the corresponding ones in the firstembodiment, and therefore description thereof is omitted.

FIG. 9 is a diagram of an example of the user management informationstored in the file server 20. The user management information 900 isstored in the hard disk 220 of the file server 20. The user managementinformation 900 stores information on users' access rights to filesmanaged by the file server 20, and the like.

A login name 901 is information on the login name of each user. Apassword 902 is information on the password of each user. An accessright 903 is information on an access right granted to each user. Thefile server 20 is configured to be capable of controlling access of eachlogin user to files/versions according to information stored in the usermanagement information 900.

FIGS. 10A and 10B are flowcharts of the version managing and printingprocess executed by the image forming apparatus according to the presentembodiment.

The process of the present flowchart is executed under the systemcontroller 101 of the image forming apparatus.

Referring to FIG. 10A, in a step S1001, from an original read by thereading control section 108, there is extracted information embedded inthe original, i.e. information on the version of the original andinformation indicative of a location where the original file is stored,and then the process proceeds to a step S1002. The information to beextracted may be visible information, such as a barcode, oralternatively invisible information, such as watermark information. Asfor the information embedding technique, a known technique is used, andhence description thereof is omitted.

In the step S1002, user information on an operating user is entered.This can be realized, for example, by displaying a screen for enteringthe user's login name and password on the display section 107, andenabling the user's login name and password to be input via theoperating section 106. This enables the system controller 101 toidentify the operator of the image forming apparatus 10.

It should be noted that the steps S1001 and S1002 may be carried out inreverse order.

In a step S1003, information on the versions of the original file andaccess right information on the login user are acquired from the fileserver 20, and then the process proceeds to a step S1004.

The information on the storage location of the original file, which isacquired in the step S1001, is passed to the file server 20, whereby itis possible to acquire various kinds of information stored in the fileversion management information 400 associated with the file. Further,the user's login name and password entered in the step S1002 are passedto the file server 20, whereby it is possible to acquire the accessright information on the user.

In the step S1004, it is determined whether or not the acquisition ofthe above-mentioned various kinds of information is successful. If theacquisition is successful, the process proceeds to a step S1005. On theother hand, if the acquisition fails e.g. because the associated filedoes not exist or the entered login name and password do not matchinformation registered in the user management information 900 of thefile server 20, the process proceeds to a step S1016.

In the step S1005, it is determined whether or not the operating user isan authorized editor. This determination can be performed based on theaccess right information associated with the user, which is acquiredfrom the file server 20 in the step S1003. If the operating user is anauthorized editor, the process proceeds to a step S1006, whereas if not,the process proceeds to a step S1007.

In the step S1006, a list of all the versions of the original file isgenerated, and then the process proceeds to a step S1010. In the stepS1006, more specifically, all the versions are listed from the fileversion management information 400 acquired from the file server 20 inthe step S1003.

In this case, the same list as shown in the file version managementinformation 400 in FIG. 4 is stored in the RAM 103 as the version listinformation 500, and is used in subsequent processing.

In the step S1007, it is determined whether or not the operating user isa viewer, i.e. whether or not the user has a view right. Thisdetermination can be performed based on the access right informationassociated with the user, which is acquired from the file server 20 inthe step S1003.

If it is determined that the operating user is a viewer, the processproceeds to a step S1008. On the other hand, if it is not determinedthat the operating user is not a viewer, which means that the user isneither an authorized editor nor a viewer granted a view right, anotification of cancellation of copying due to access right violation isdisplayed (step S1017), followed by terminating the present process.

In the step S1008, it is determined whether the version of the originalread in the step S1001 grants an access right to viewers (having a viewright), i.e. whether or not the version of the original is a majorversion. This determination can be performed by referring to the versioninformation extracted in the step S1001 and the file version managementinformation 400 acquired in the step S1003.

If it is determined that the version of the read original grants anaccess right to viewers, the process proceeds to a step S1009. On theother hand, if it is not determined that the version of the readoriginal grants an access right to viewers, this means that theoperating user does not have an access right to the version of the readoriginal, and hence the notification of cancellation of copying due toaccess right violation is displayed (step S1017), followed byterminating the present process.

In the step S1009, a list of versions which grant an access right toviewers is generated, and then the process proceeds to the step S1010.In the step S1009, more specifically, only the versions (major versions)which grant an access right to viewers are extracted and listed from thefile version management information 400 acquired from the file server 20in the step S1003.

The generated list is stored in the RAM 103 as the version listinformation 500, and is used in subsequent processing. The version listinformation 500 illustrated in FIG. 5 is an example generated byextracting only versions that grant an access right to viewers.

In the step S1010 to a step S1015, the same processing as that in thesteps S707 to S712 in FIG. 7B in the first embodiment is executed.

If it is determined in the step S1004 that the acquisition fails, theprocess proceeds to the step S1016, wherein it is determined whether ornot copying is permitted. Determination as to whether or not to permitcopying may be performed according to information unconditionallydetermined by the image forming apparatus 10, or alternatively may beconfigured to be changeable via the operating section 106.

If it is determined in the step S1016 that copying is not permitted, thenotification of cancellation of copying is displayed on the displaysection 107 in the step S1107, followed by terminating the presentprocess. On the other hand, if it is determined in the step S1016 thatcopying is permitted, the original is copied in a step S1018, followedby terminating the present process.

FIGS. 11A and 11B are flowcharts of a variation of the version managingand printing process executed by the image forming apparatus accordingto the second embodiment.

The present variation is executed under the control of the systemcontroller 101 of the image forming apparatus.

In the present variation, determination as to the access rights, whichis performed in the steps S1005, S1007, and S1008 in FIG. 10A, isperformed by the file server 20.

In steps S1101 and S1102, the same processing as that in the steps S1001and S1002 is carried out.

In a step S1103, only pieces of version information corresponding to anappropriate access right are acquired from various pieces of informationstored in the file version management information 400 of the file server20. This can be achieved by passing the information on the storagelocation of the original file and version of the original, which isacquired in the step S1101, and the user login name and password enteredin the step S1102, to the file server 20.

Determination as to the access right can be performed by the file server20 carrying out the same determination as carried out in the stepsS1005, S1007, and S1008 in FIG. 10A.

In a step S1104, it is determined whether or not the acquisition of thepieces of version information corresponding to an appropriate accessright for the original file is successful. If the acquisition issuccessful, the process proceeds to a step S1105. On the other hand, ifthe acquisition fails e.g. because the associated file does not exist orthe entered login name and password does not match informationregistered in the user management information 900 of the file server 20,the process proceeds to a step S1112.

In the step S1105, a list of the versions acquired from the file server20 is generated, and then the process proceeds to a step S1106. In thestep S1105, more specifically, a list of the versions acquired in thestep S1103 is listed, and the generated list is stored in the RAM 103 asthe version list information 500, and is used in subsequent processing.

In the step S1106 to a step S1114, the same processing as that in thesteps S1010 to S1018 is executed.

As described above, according to the present embodiment, it is possibleto execute the processing considering not only an access rightassociated with the version of a read original but also an access rightgranted to an operating user, to thereby achieve more fine-grainedaccess control.

It is to be understood that the present invention may also beaccomplished by supplying a system or an apparatus with a storage mediumin which a program code of software, which realizes the functions ofeither of the above described embodiments, is stored, and causing acomputer (or CPU or MPU) of the system or apparatus to read out andexecute the program code stored in the storage medium.

In this case, the program code itself read from the storage mediumrealizes the functions of either of the above described embodiments, andtherefore the program code and the storage medium in which the programcode is stored constitute the present invention.

Examples of the storage medium for supplying the program code include afloppy (registered trademark) disk, a hard disk, a magnetic-opticaldisk, an optical disk, such as a CD-ROM, a CD-R, a CD-RW, a DVD-ROM, aDVD-RAM, a DVD-RW, or a DVD+RW, a magnetic tape, a nonvolatile memorycard, and a ROM. Alternatively, the program may be downloaded via anetwork.

Further, it is to be understood that the functions of either of theabove described embodiments may be accomplished not only by executingthe program code read out by a computer, but also by causing an OS(operating system) or the like which operates on the computer to performa part or all of the actual operations based on instructions of theprogram code.

Further, it is to be understood that the functions of either of theabove described embodiments may be accomplished by writing a programcode read out from the storage medium into a memory provided on anexpansion board inserted into a computer or a memory provided in anexpansion unit connected to the computer and then causing a CPU or thelike provided in the expansion board or the expansion unit to perform apart or all of the actual operations based on instructions of theprogram code.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures and functions.

This application claims priority from Japanese Patent Application No.2008-059400 filed Mar. 10, 2008, which is hereby incorporated byreference herein in its entirety.

1. An image forming apparatus communicably connected to a file server,comprising: a reading unit configured to read an original to therebygenerate image data; an extraction unit configured to extract versioninformation on the original from the image data generated by saidreading unit; and an identification unit configured to identify, out ofat least one version of an original file which is electronic datacorresponding to the original and is stored in the file server, aversion of the original file that permits the image forming apparatus toperform image formation, based on the version information on theoriginal extracted by said extraction unit.
 2. The image formingapparatus according to claim 1, wherein said extraction unit furtherextracts information for identifying the original file, from the imagedata, and wherein said identification unit identifies, out of at leastone version of the original file acquired from the file server based onthe information for identifying the original file extracted by saidextraction unit, the version of the original file that permits the imageforming apparatus to perform image formation, based on the versioninformation on the original.
 3. The image forming apparatus according toclaim 1, wherein said extraction unit further extracts information foridentifying the original file, from the image data, and wherein saididentification unit transmits the information for identifying theoriginal file extracted by said extraction unit, and the versioninformation on the original, to the file server, and identifies theversion of the original file that permits the image forming apparatus toperform image formation, based on the version information returned fromthe file server as a response to the transmission.
 4. The image formingapparatus according to claim 1, further comprising a file acquisitionunit configured to acquire an original file of the version identified bysaid identification unit, from the file server, and an image formingunit configured to perform image formation based on the acquiredoriginal file.
 5. The image forming apparatus according to claim 3,further comprising a display unit configured to be operable when saididentification unit identifies a plurality of versions on the originalfile, to display the versions, and wherein said file acquisition unitacquires an original file of a version selected from the versionsdisplayed on said display unit.
 6. The image forming apparatus accordingto claim 1, wherein version information on the original and the originalfile is associated with an access right to the original file, andwherein said identification unit identifies a version of the originalfile, which is compatible with an access right to the original filecorresponding to the version information on the original.
 7. The imageforming apparatus according to claim 6, further comprising anidentifying unit configured to identify a user operating the imageforming apparatus, and a determination unit configured to determine anaccess right of the user identified by said identifying unit to theoriginal file, and wherein said identification unit identifies a versionof the original file which permits the image forming apparatus toperform image formation, based on the access right of the useridentified by said identifying unit to the original file.
 8. The imageforming apparatus according to claim 7, further comprising a cancelingunit configured to be operable when the access right to the originalfile, which is associated with the version information on the originalextracted by said extraction unit, and the access right of the useridentified by said identifying unit to the original file are notcompatible, to cancel image formation based on the original file.
 9. Theimage forming apparatus according to claim 1, wherein the versioninformation on the original file and the version information on theoriginal are classified into information on a minor version andinformation on a major version, and respective access rights areassociated with the minor version and the major version.
 10. A method ofcontrolling an image forming apparatus communicably connected to a fileserver, comprising: reading an original to thereby generate image data;extracting version information on the original from the image datagenerated by said reading; and identifying, out of at least one versionof an original file which is electronic data corresponding to theoriginal and is stored in the file server, a version of the originalfile that permits the image forming apparatus to perform imageformation, based on the version information on the original extracted bysaid extraction.
 11. A computer-readable storage medium storing acontrol program for causing a computer to execute a method ofcontrolling an image forming apparatus communicably connected to a fileserver, wherein the method comprises: reading an original to therebygenerate image data; extracting version information on the original fromthe image data generated by said reading; and identifying, out of atleast one version of an original file which is electronic datacorresponding to the original and is stored in the file server, aversion of original file that permits the image forming apparatus toperform image formation, based on the version information on theoriginal extracted by said extraction.